// 基础实体接口
export interface BaseEntity {
  createBy?: string | number;
  createTime?: string;
  updateBy?: string | number;
  updateTime?: string;
  remark?: string;
  delFlag?: string;
}

// 分类展示接口
export interface NcategoryVO {
  /**
   * 分类ID
   */
  categoryId: string | number;

  /**
   * 父分类ID
   */
  parentId: string | number;

  /**
   * 祖级ID链
   */
  ancestors: string;

  /**
   * 分类名称
   */
  categoryName: string;

  /**
   * 分类编码（唯一）
   */
  categoryCode: string;

  /**
   * 图标URL
   */
  icon: string;

  /**
   * 排序
   */
  sort: number;

  /**
   * 备注
   */
  remark: string;

  /**
   * 状态（0正常 1停用）
   */
  status: string;

  /**
   * 子对象
   */
  children: NcategoryVO[];
}

// 分类表单接口
export interface NcategoryForm extends BaseEntity {
  /**
   * 分类ID
   */
  categoryId?: string | number;

  /**
   * 父分类ID
   */
  parentId?: string | number;

  /**
   * 祖级ID链
   */
  ancestors?: string;

  /**
   * 分类名称
   */
  categoryName?: string;

  /**
   * 分类编码（唯一）
   */
  categoryCode?: string;

  /**
   * 图标URL
   */
  icon?: string;

  /**
   * 排序
   */
  sort?: number;

  /**
   * 备注
   */
  remark?: string;

  /**
   * 状态（0正常 1停用）
   */
  status?: string;
}

// 分类查询接口
export interface NcategoryQuery {
  /**
   * 父分类ID
   */
  parentId?: string | number;

  /**
   * 祖级ID链
   */
  ancestors?: string;

  /**
   * 分类名称
   */
  categoryName?: string;

  /**
   * 分类编码（唯一）
   */
  categoryCode?: string;

  /**
   * 图标URL
   */
  icon?: string;

  /**
   * 排序
   */
  sort?: number;

  /**
   * 状态（0正常 1停用）
   */
  status?: string;

  /**
   * 额外参数
   */
  params?: any;
}